const Joi = require('@hapi/joi');
const Base = Joi.object({
  title: Joi.string().required(),
  content: Joi.string().allow(null).description('富文本内容'),
  source: Joi.string().allow(null).description('来源'),
  author: Joi.string().allow(null).description('作者'),
  sub_title: Joi.string().allow(null).description('副标题'),
  intro: Joi.string().allow(null,'').description('简介'),
  images: Joi.array().allow(null).description('图片数组'),
  redirect_url: Joi.string().allow(null).description('跳转链接'),
  redirect: Joi.string().allow('yes', 'no').default('no'),
  cover: Joi.string().allow(null).description('封面图片'),
  category: Joi.number().allow(null).required().description('栏目分类').messages({'any.required': '栏目分类(category)必须填写！'}),
  hits: Joi.number(),
  top: Joi.string().allow('yes', 'no').default('no'),
  position: Joi.number(),
  author_id: Joi.number().allow(null),
  publish_time: Joi.date().allow(null),
  goods: Joi.number(),
  area: Joi.string().allow(null).description('地区'),
  status: Joi.string().allow('published', 'draft', 'delete'),
  tags: Joi.array().items(Joi.string().allow('')),
  comment: Joi.string().allow('allow', 'disallow').default('disallow'),
  categoryinfo: Joi.object().allow(null)
}).label('Content').unknown(true);

exports.Base = Base
exports.Create = Base.append({}).label('ContentCreate')
exports.Update = Base.append({
  id: Joi.number().required().min(1).description('content的id'),
}).label('ContentCreate');
exports.Default = Base.append({
  id: Joi.number().required().min(1).description('content的id'),
  createdAt: Joi.string().allow(null).description('创建时间'),
  updatedAt: Joi.string().allow(null).description('更新时间'),
  deletedAt: Joi.string().allow(null).description('删除时间/状态'),
}).label('ContentDefault')